package com.xingkeduo.pojo.table;

import java.util.Date;

import org.apache.ibatis.type.Alias;

import com.xingkeduo.util.pojo.base.BaseTable;
import com.xingkeduo.util.tool.IdentityUtil;
import com.xingkeduo.util.tool.IdentityUtil.Worker;

/**
 * 一线员工工作经历类
 * 
 * @author 高杰
 * @time 2019年1月7日 下午6:08:55
 * @description
 */
@Alias("CraftsmanJobDetail")
public class CraftsmanJobDetailTO extends BaseTable<CraftsmanJobDetailTO> {
	private Date startTime;
	private Date endTime;
	private String company;
	private String leaveReason;
	private String proveName;
	private String provePhone;
	private long craftsmanId;

	public Date getStartTime() {
		return startTime;
	}

	public CraftsmanJobDetailTO setStartTime(Date startTime) {
		this.startTime = startTime;
		return this;
	}

	public Date getEndTime() {
		return endTime;
	}

	public CraftsmanJobDetailTO setEndTime(Date endTime) {
		this.endTime = endTime;
		return this;
	}

	public String getCompany() {
		return company;
	}

	public CraftsmanJobDetailTO setCompany(String company) {
		this.company = company;
		return this;
	}

	public String getLeaveReason() {
		return leaveReason;
	}

	public CraftsmanJobDetailTO setLeaveReason(String leaveReason) {
		this.leaveReason = leaveReason;
		return this;
	}

	public String getProveName() {
		return proveName;
	}

	public CraftsmanJobDetailTO setProveName(String proveName) {
		this.proveName = proveName;
		return this;
	}

	public String getProvePhone() {
		return provePhone;
	}

	public CraftsmanJobDetailTO setProvePhone(String provePhone) {
		this.provePhone = provePhone;
		return this;
	}

	public long getCraftsmanId() {
		return craftsmanId;
	}

	public CraftsmanJobDetailTO setCraftsmanId(long craftsmanId) {
		this.craftsmanId = craftsmanId;
		return this;
	}

	public static CraftsmanJobDetailTO build() {
		return new CraftsmanJobDetailTO().initId(IdentityUtil.nextId(Worker.USER));
	}

	public CraftsmanJobDetailTO copy(JobseekerJobDetailTO jobseekerJobDetail) {
		return this.setStartTime(jobseekerJobDetail.getStartTime()).setEndTime(jobseekerJobDetail.getEndTime())
				.setCompany(jobseekerJobDetail.getCompany()).setLeaveReason(jobseekerJobDetail.getLeaveReason())
				.setProveName(jobseekerJobDetail.getProveName()).setProvePhone(jobseekerJobDetail.getProvePhone());
	}
}
